﻿/*------------------------------------------------
// File Description: LineMaterialBillItem DataBase Entity
// Author:			 Crane
// Create Time:		 2022-03-23 12:30:07
//------------------------------------------------*/

using System;
using System.Data.Entity;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;

namespace IOA.MES.DataAccess.Entity
{
    /// <summary>
    /// 
    /// </summary>
    [Table(nameof(LineMaterialBillItem))]
    public class LineMaterialBillItem : BaseEntity
    {
        private string _billNo = string.Empty;
        private string _allocateNo = string.Empty;
        private string _productCode = string.Empty;
        private string _productName = string.Empty;
        private string _productSpecs = string.Empty;
        private string _productCompany = string.Empty;
        private string _batchNo = string.Empty;
        private string _batchNoBig = string.Empty;
        private string _batchNoSmall = string.Empty;
        private string _categoryCode = string.Empty;
        private string _categoryName = string.Empty;

        #region Public Property

        ///<Summary>
        /// 单据类型
        ///</Summary>
        public Enum.LineMaterialBillType BillType { get; set; }

        ///<Summary>
        /// 单号
        ///</Summary>
        public string BillNo
        {
            get { return string.IsNullOrWhiteSpace(_billNo) ? string.Empty : _billNo; }
            set { _billNo = value; }
        }

        ///<Summary>
        /// 调拨单号
        ///</Summary>
        public string AllocateNo
        {
            get { return string.IsNullOrWhiteSpace(_allocateNo) ? string.Empty : _allocateNo; }
            set { _allocateNo = value; }
        }

        ///<Summary>
        /// 调拨单物料ID
        ///</Summary>
        public long AllocateProductId { get; set; }

        ///<Summary>
        /// 分类编号
        ///</Summary>
        public string CategoryCode
        {
            get { return string.IsNullOrWhiteSpace(_categoryCode) ? string.Empty : _categoryCode; }
            set { _categoryCode = value; }
        }

        ///<Summary>
        /// 分类名称
        ///</Summary>
        public string CategoryName
        {
            get { return string.IsNullOrWhiteSpace(_categoryName) ? string.Empty : _categoryName; }
            set { _categoryName = value; }
        }

        ///<Summary>
        /// 料号
        ///</Summary>
        public string ProductCode
        {
            get { return string.IsNullOrWhiteSpace(_productCode) ? string.Empty : _productCode; }
            set { _productCode = value; }
        }

        ///<Summary>
        /// 物料名称
        ///</Summary>
        public string ProductName
        {
            get { return string.IsNullOrWhiteSpace(_productName) ? string.Empty : _productName; }
            set { _productName = value; }
        }

        ///<Summary>
        /// 物料规格
        ///</Summary>
        public string ProductSpecs
        {
            get { return string.IsNullOrWhiteSpace(_productSpecs) ? string.Empty : _productSpecs; }
            set { _productSpecs = value; }
        }

        ///<Summary>
        /// 厂家
        ///</Summary>
        public string ProductCompany
        {
            get { return string.IsNullOrWhiteSpace(_productCompany) ? string.Empty : _productCompany; }
            set { _productCompany = value; }
        }

        ///<Summary>
        /// 批次号
        ///</Summary>
        public string BatchNo
        {
            get { return string.IsNullOrWhiteSpace(_batchNo) ? string.Empty : _batchNo; }
            set { _batchNo = value; }
        }

        ///<Summary>
        /// 托盘号
        ///</Summary>
        public string BatchNoBig
        {
            get { return string.IsNullOrWhiteSpace(_batchNoBig) ? string.Empty : _batchNoBig; }
            set { _batchNoBig = value; }
        }

        ///<Summary>
        /// 箱号
        ///</Summary>
        public string BatchNoSmall
        {
            get { return string.IsNullOrWhiteSpace(_batchNoSmall) ? string.Empty : _batchNoSmall; }
            set { _batchNoSmall = value; }
        }

        ///<Summary>
        /// 数量
        ///</Summary>
        public decimal Quantity { get; set; }
        #endregion
    }

    public partial class MESContext
    {
        /// <summary>
        /// 
        /// </summary>
        public virtual DbSet<LineMaterialBillItem> LineMaterialBillItems { get; set; }
    }
}